Skip to content
This repository has been archived by the owner on Dec 22, 2021. It is now read-only.

Implement SIMD load splat and load extend #307

Merged
merged 6 commits into from
Aug 31, 2020

Conversation

ngzhian
Copy link
Member

@ngzhian ngzhian commented Aug 17, 2020

Add more pack types for SIMD load splat and load extends.

This currently uses the old names, after the sync next week we will decide on #322 and I can add a follow-up patch to address the changes.

@ngzhian
Copy link
Member Author

ngzhian commented Aug 17, 2020

@rossberg this is an alternative to #306. We add more cases to Types.pack_size to distinguish between the different kinds of loads. SIMD load extends (load 64 bit representing 8x8, then extend each lane to 16-bits) use Pack8x8. These aren't used by the other loads.

I think I like this more, no other types will use the new pack types, but I don't think that's much of a problem - we add an assert false to those pattern matches to catch misuse.

ngzhian added a commit to ngzhian/simd that referenced this pull request Aug 25, 2020
This enables running all the SIMD tests (in test/core/simd) whenever we
do `make test`.

This should not be submitted yet, it depends on WebAssembly#306 or WebAssembly#307 for the
implementation of load splats and loads extends.
This was referenced Aug 25, 2020
@ngzhian ngzhian force-pushed the simd-load-splat-extend-merged branch 2 times, most recently from 195d7d9 to 301cdbd Compare August 26, 2020 17:59
Add more pack types for SIMD load splat and load extends.
@ngzhian ngzhian force-pushed the simd-load-splat-extend-merged branch from 301cdbd to d051fb6 Compare August 26, 2020 18:40
interpreter/syntax/types.ml Outdated Show resolved Hide resolved
interpreter/text/lexer.mll Show resolved Hide resolved
test/core/simd/simd_align.wast Show resolved Hide resolved
@ngzhian ngzhian merged commit b295c5d into WebAssembly:master Aug 31, 2020
@ngzhian ngzhian deleted the simd-load-splat-extend-merged branch August 31, 2020 17:32
ngzhian added a commit to ngzhian/simd that referenced this pull request Sep 1, 2020
This enables running all the SIMD tests (in test/core/simd) whenever we
do `make test`.

This should not be submitted yet, it depends on WebAssembly#306 or WebAssembly#307 for the
implementation of load splats and loads extends.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants